package com.study.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 跨域处理
 */
@Configuration
public class MyWebMvcConfigureAdapter implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOriginPatterns("*") // new versions
                .allowedMethods("*")
                .allowedHeaders("*")
                .allowCredentials(true)
                .maxAge(3600);
    }

    /**
     * addMapping：指定允许跨域访问的URL路径，可以是单个路径或多个路径的数组，默认为/**，表示允许所有路径访问。
     * allowedOrigins：指定允许跨域访问的源，可以是单个源或多个源的数组，默认为*，表示允许所有源访问。   .allowedOrigins("http://127.0.0.1:5500")
     * allowedMethods：指定允许跨域访问的HTTP方法，可以是单个方法或多个方法的数组，默认为允许所有方法。  .allowedMethods("GET", "POST", "PUT", "DELETE")
     * allowedHeaders：指定允许跨域访问的自定义头部，可以是单个头部或多个头部的数组，默认为允许所有头部。
     * allowCredentials：指定是否允许发送Cookie等凭证信息，默认为false。
     * maxAge：指定预检请求的有效期，单位为秒，默认为1800秒。
     *
     */

}
